約 2,116,440 件
https://w.atwiki.jp/skyrim_mod/pages/29.html
おもにNIF Skopeを使った小技集です。 BSLightingShaderPropertyのデータ NifSkope 2.0のカメラ操作 NifSkopeのツールチップ ノード番号の変更 ノードの追加 特定の部位(ノード)につける BSDismemberSkinInstanceからNiSkinInstanceに変換 NiAlphaProperty NifSkopeでのエフェクトアニメーション調整基礎知識エフェクトの再生方法 シーケンスの中身コントローラーとインターポレーター NiTextKeyExtraData シーケンス全体の速度の調節 エフェクトの動きやタイミングの変更 表示/非表示のアニメーションノード 各コントローラーの解説 Staticオブジェクトのコリジョン作成コリジョンメッシュの作成 ChunkMergeによるコリジョンの差し替え。 動くオブジェクトのコリジョン作成 NifSkope 2.0でのメッシュの頂点位置編集 BSLightingShaderPropertyのデータ Skyrimのマテリアル設定ノードであるBSLightingShaderPropertyについてのデータベースです。 自己発光やグロスの強さなど設定できます。 NifSkope 2.0のカメラ操作 カメラの平行移動 中クリックドラッグ カメラのズーム 中クリックスクロール、右クリックドラッグ カメラの回転 左クリックドラッグ、矢印キー、A,Dキー(左右のみ) NifSkopeのツールチップ Nameのところにマウスを乗せておくと、その項目が何を意味するのか表示されます。英語なのですがわかりやすいです。 ノード番号の変更 Ctrl+矢印キー下か上 ノードの追加 右クリック→Node→Attach Node 特定の部位(ノード)につける BSFadeNodeを選択して右クリック→Block→Insert→NiStringsExtraDataで追加する。 Block Details内のtxtボタンを押して、AttachTと入力する。 Num Stringsを1にして、下のDataの更新ボタンを押す。 DataをNamedNode ノード名にする。たとえば、NamedNode NPC Head [Head]だとこれを追加したnifは頭につく(xyz軸の基準点が頭になる)。 Nodeごとに複数付ける場合は、BSFadeNodeのAttachTのDataをMultiTechniqueとすると、NiNodeごとにAttachTの設定ができる。 BSDismemberSkinInstanceからNiSkinInstanceに変換 たまにオブジェクト(口や目など)がNiSkinInstance場合があって、これをあわせないと表示されなかったり乱れたりします。 NifSkopeでBSDismemberSkinInstanceを選択→右クリック→Block→Convert→NiS...→NiSkinInstance NiAlphaProperty 透過に関するノードです。 Flag値とThreshold値(=しきい値)で制御しています。 4844→スレッショルド値(テクスチャのアルファチャンネルの色)以上の部分を表示する。それ以外は非表示。ジャギが出て汚いが表示は安定する。 4109→半透明も扱えてきれいだがアルファ病(半透明同士で重なると)が発生する場合がある。 4333→同上。ただしブレンド方式が違くて、濃い(黒い)エフェクトなどで使う。 詳しい説明は Skyrim箱庭DIY 【Skyrim】NifskopeのNiAlphaPropertyによる透過設定の使い方 NifSkopeでのエフェクトアニメーション調整 本格的なエフェクトアニメーションの作成は難しいですが、NifSkopeで位置やサイズ、速度や色の調整ならできます。 基礎知識 アニメーション付きのnifファイルを開くとたいていは以下の四つがついてます。 これがアニメーションの設定項目です。 NiControllerManagerがアニメーション設定の親玉です。 ├NiMultiTargetTransformControllerはここで登録したものを一括してトランスフォーム操作(移動・回転・拡縮)できます。最初にあるのはBSFadeNodeとNiNodeを指定するのが通例。 ├NiControllerSequenceは各シーケンスの設定です。エフェクトアニメーションはたいていシーケンスという区切りで分かれています。 └NiDefaultAVObjectPaletteはアニメーションさせるオブジェクトの指定です。この一覧にないオブジェクトはアニメーションできません。 ※この四つがないタイプもある。イベントで発動しなかったりシーケンスで区切ったりする必要のないもの。たき火など。(data\meshes\effects\fxfirewithemberslogs01.nif) エフェクトの再生方法 BSBehaviorGraphExtraDataのBehaviour Graph FileにBehaviorファイルを指定することで再生方法を変更できます。 再生方法 Behaviorファイル シーケンス名など解説 開始と終了のある持続 Magic\BeginLoopEnd.hkx mBegin,mLoop,mEndの各開始、持続、終了のシーケンスを持つもの。例えば灯火の魔法エフェクトなど 自動再生 GenericBehaviors\Autoplay.hkx シーケンス名はAutoPlay。またはAutoLoopもつけれる。ドラゴンのブレスなど ロード時再生 Magic\IdleOnLoad.hkx ロード時に再生される。 シーケンスの中身 コントローラーとインターポレーター NiControllerSequence下のツリーは以下の2つのタイプに分けられます。 Controller(制御)=何を制御するのかを指定 Interpolator(補完)=コントローラーで実際操作する数値と補完方法。要はパラメータ これらは必ず二つでセットになります。 たとえば、爆発のエフェクトを作るとき、コントローラーで拡縮(スケール)を指定して、インターポレイターはその数値なので0.0秒は1.0倍→0.5秒は2.0倍みたいな指定をします。 どのノードが何のコントローラーとインターポレイターを割り当てられているかはツリーを見たただけでは分かりにくいです。 そこでNiControllerSequence→Block DetailにあるControlled Blocksは、どのNiNodeがどのControllerとInterpolatorが付いているかを確認できます。 NiTextKeyExtraData NiTextKeyExtraDataはシーケンスの再生時間を指定できます。 Text Keys→Text Keys→EndのTimeが再生時間です。 リロードしないと反映されないので一旦Saveしてリロード(Alt+X)します。 ※エフェクトがEndの時間でも消えない場合 物によっては勝手に消えるんですが、エフェクトそのものの終了はNiTextKeyExtraDataでAnimEndを指定しないといけません。 シーケンス全体の速度の調節 NiControllerSequenceにあるFrequencyは頻度というよりは周期なのでエフェクトの再生速度が変わります。 これもリロードしないと反映されないので一旦Saveしてリロード(Alt+X)します。 2.0にした場合、2倍速く再生されますが、アニメーションの総再生時間は変わりません。 これはStopTimeまでの時間を基準にした場合の周期です。 例えば1.3秒のアニメーションを倍速く半分の時間にしたい場合はFrequencyは2.0 NiTextKeyExtraData→Text Keys→Text Keys→EndのTimeの指定を0.65。 シーケンスのStopTimeはそのままです。 エフェクトの動きやタイミングの変更 Block Listのウィンドウ内のNiControllerManager→NiControllerSequenceのツリーを開く BlockDetailsのウィンドウに移って編集したいオブジェクト名のControlled Blocks→Interpolatorの青矢印をクリック。 移動したツリー(NiTransformInterpolator)下のNiTransformDataを選択→Block DetailsのScalesが大きさ、Translationsが移動です。 Keys→Keysと開いてTimeが時間、Valueが大きさまたは座標軸です。 時系列順にKeysが並んでます。ここを変更してどのタイミングでどれだけ大きさ・移動を変更するか決めれます。 Timeが0.0秒の時にScalesのValueが1.0倍で、Time1.0秒で2.0倍なら、Time0.5秒は1.5倍になります。Keyがなくても勝手に補完してくれます。 表示/非表示のアニメーションノード NiVisController→表示非表示のコントロール 直前のノードのNiBoolInterpolator→NiBoolDataでタイミングの編集可能。 KeysのところにTimeとValueがあるのでそこで。Value 1が表示、0が非表示です。 各コントローラーの解説 コントローラー名 インターポレイター名 BSEffectShaderPropertyFloatController NiFloatInterpolator Type of Controlled Variableで指定した項目を変更可能。例えばEmissive Multipleなら色の強さ。※ BSLightingShaderPropertyFloatController NiFloatInterpolator 上記のライティングシェーダー版。※ BSEffectShaderPropertyColorController NiPoint3Interpolator 上記と似ているがこれは色の変更で独立している。 NiMultiTargetTransformController NiTransformInterpolator Extra Targetsに指定したオブジェクト全般の移動・回転・拡縮。 NiVisController NiBoolInterpolator 表示・非表示のコントローラー ※NiControllerSequence→Block Detail→Controlled Blocks→Controlled BlocksにあるVariableをType of Controlled Variableの番号を指定する必要あり。※要検証 上から順に0から1,2,3…となる。エフェクトでのEmissive Multipleは0、ライティングの0はRefraction Strength。 Type of Controlled Variableを変更した場合はリロード(Alt+X)しないとプレビューには反映されません。 Staticオブジェクトのコリジョン作成 ※ここに書かれているのは古い方法で、古いBlenderとMorrowind形式を使わなくてもできます。 Nifにコリジョンを追加する方法 2015年版 NifSkopeで生成できるコリジョンは自動生成なので、自由な形にすることはできません。ですが、いくつかのツールを併用して自由な形のコリジョンを作成する事ができます。 ここではすでに完成したNifファイルに、自由な形のコリジョンを追加する方法を解説します。 この方法ではStaticつまり建物やイス等の固定されたオブジェクトのコリジョンしかできません。 Staticオブジェクト以外のコリジョン作成はこの下の項目で解説します。 (Staticオブジェクト以外のテンプレート設定するとそのテンプレートのコリジョンが出力してしまいます。) ツールの項目を参照に、ChunkMergeをダウンロードしてください。 コリジョンメッシュの作成 最初にBlenderでコリジョンメッシュを作成。Box等で簡単なコリジョンメッシュ用のモデルを作ります。 完成したらLogicからコリジョンの指定。 Objectから詳細の設定。 うまくコリジョンの設定ができていれば、Texturedモードでこのように表示されるはずです。 コリジョンとオブジェクトの両方を選択してMorrowind Nifでエクスポート。設定は下記の通り。 すでに完成しているNifファイルと区別するため、***Morro等の名前を付けておきます。 ChunkMergeによるコリジョンの差し替え。 ChunkMergeを起動。 最初にNif.xmlファイルを読み込みます。これはNifSkopeのフォルダにあるのでそれを指定。 templateディレクトリの指定。自作Nifに近いSkyrimNifを選択。(StaticならStatic、ActiverならActiverのNif) TESV.exeを選択。 Nif-Fileは自作のNif(既存のコリジョン流用版)、Collision-Fileに先ほど出力したMorrowindのNif、Templateは自作したNifに一番近いファイルを指定。ChunkMergeはコリジョンメッシュのみをMorrowind Nifから移植するものなので、その他のコリジョンノードはSkyrimのものをそのまま利用します。ですので、Templateで指定するNifが重要になってきます。座れるイスのNifはmeshes/furniture下にあるので、今回はそれを指定しています。 Convertボタンを押してNif converted successfullyと表示されたら完成。 CKで配置し、F4キーでコリジョンの形を確認できます。 左が既存のコリジョン流用版、右が自作コリジョンです。 まだ開発途中のツールですので、エラーが起きる可能性もあります。バックアップをとりながら作業を進めていってください。 ・うまくいかない時 原因が全く不明ですが、Blenderで作ったコリジョンによってはChunk MergeでNif converted successfully.まで辿りつけずに、途中で止まってしまう場合があります。 正常に出力できるコリジョンのblenderとnifファイルを用意しました。ボックス状のものがコリジョンなのでそれを好きな形に変えて使ってください。 正常に出力できるコリジョン 動くオブジェクトのコリジョン作成 皿や果物などの動くオブジェクトのコリジョンを自由に作ることは出来ないですが、上記のStaticオブジェクトでコリジョンを生成してから、動くオブジェクトに改変することはできます。 上記Staticオブジェクトのコリジョン作成を参考にChunkMergeでnifにコリジョン移植するまで進めます。テンプレートは必ずイス(meshes\furniture\common\commonchair01.nif)等のStaticオブジェクトを指定してください。 ※Staticオブジェクトではないテンプレートの場合はテンプレートのコリジョンを持ってきてしまいます。 形や材質の近いオブジェクトを探して用意します。(FO3 Archive等でSkyrim - Meshes.bsaから探す) たとえばティーカップを作ったのなら、コップのnif(meshes\clutter\glazedcup01.nif)やジョッキ(meshes\clutter\dining set\basictankard01.nif)を元にします。 元にするnifのbhkRigidBodyの設定を動くオブジェクトにしたいnifのbhkRigidBodyT()の設定をほとんどすべて移植します。 合わせなくてもいいのは、Shape、TranslationとCenter(この2つは数値すべてを0にしないとコリジョンの位置がおかしくなる)です。 重要なのはInertia(イネーシャ、慣性)でここの設定をしないと風に流れるかのごとく等速直線運動繰り出します。 Massは物理エンジン上の重さ。ゲーム内で動きが軽すぎると思ったらここはいじっても良いです。 Motion Systemが基本的な挙動の違いを決めてます。 固定オブジェクトはMO_SYS_BOX_STABILIZED、動くのはMO_SYS_SPHERE_INERTIAがほとんどだと思います。 落としたり触ったりした時の音などのマテリアルの設定はbhkCompressedMeshShapeData→Chunk Materials→Chunk Materials→Skyrim Materialです。 bhkMoppBvTreeShapeもおそらく設定する必要があります。 例えばSKY_HAV_MAT_SOLID_METALを設定すると金属音(金属皿やゴブレットなどはこの設定)になります。 NifSkope 2.0でのメッシュの頂点位置編集 本格的に造形するには全く向いてませんが、ちょっとした修正には便利です。 Nifskope 2.0 Dev6をダウンロードします。 画像の赤枠アイコンのSelect Vertexを押す。 緑色の編集したい頂点を左クリックする。頂点を選択しても見た目が変化しないので注意。どこの頂点を選択したか確認するには、画像の赤枠Select Objectモードに戻すと選択した頂点が青くなってます。 Block Details内のVerticesで選択した頂点の数値がハイライトされているので、そこのXYZの数値を変更します。
https://w.atwiki.jp/skyrim_mod/pages/46.html
SkyUI MCMのチュートリアル SkyUI wiki https //github.com/schlangster/skyui/wiki Quick Start(SkyUI公式チュートリアル) https //github.com/schlangster/skyui/wiki/MCM-Quickstart API Reference(SkyUI公式レファレンス) https //github.com/schlangster/skyui/wiki/MCM-API-Reference SkyUI MCMのチュートリアルイントロダクション 準備 MCMの構造と流れ 実際に動くメニューを作る 作ったMCMを更新するとき イントロダクション Mod Configuration Menu (MCM)は名前の通りModの調整メニューを追加します。 これは自分自身でModのメニューをとりあえず作れるようになるためのチュートリアルです。 ある程度Papyrusに触ったことがある方向けです。最低限CK wikiのスクリプトチュートリアルは済ませましょう。 準備 SkyUI wikiからSkyUI SDKを入れます。 この解説はSkyUI SDK 3.1時のものです。基本的な流れは変わりません。 ダウンロードしたファイルを解凍してScriptフォルダをDataフォルダに入れます。 そしてSkyUI本体も入れておきます。 あなたのModのespをCKで開いてから、Object WindowからQuest項目を選びます。 右クリックしてNewを選択し新しくクエストを作ります。 Quest DataタブでIDを入力(例 aaaxxMCMQuest)。 Start Game Enabledはチェック、Run at onceはチェックを外す。 一旦OK押して閉じます。 再度作成したクエストを開いて、Quest Aliasタブを開きます。 右クリックしてNew Reference Aliasを選びます。 左上AliasにAliasの名前を入力(例:MCMPlayerAlias) Fill TypeをSpecific Referenceを選んで、Select Forced Referenceボタンを押します。 cellは(any)、RefはPlayerRef( Player )です。 次に画面右側Scripts欄のAddボタンを押します。 Filterにskiとうって検索を絞りSKI_PlayerLoadGameAliasを選びます。 これでAliasは終了ですのでAliasのウィンドウをOKして閉じます。 Scriptsタブを開いてAddボタンを押します。 newscriptを選んで、新しく名前をつけ(例:aaaxxMCMScript)、{Extendsを ski_configbase}にしてOKを押します。 スクリプトのウィンドウを一旦閉じて、Propertiesボタンを押します。 ModNameを選択してEdit Value。 ここにMod名を記載します。(例:Test) これで準備は整いました。 後は新しく作ったスクリプトに記述していきます。 MCMの構造と流れ 構造と流れさえ分かればそこまで難しくないです。 細かいことはさておき、手を動かしてみましょう。 Scriptname aaaxxMCMScript extends ski_configbase ;変数の定義 int ToggleTestID bool bToggleTest = true ;ページの設定 Event OnPageReset(string page) ToggleTestID = AddToggleOption("Test Toggle", bToggleTest) endEvent int function GetVersion() return 1 endFunction ;選択時の設定 Event OnOptionSelect(int option) if (option == ToggleTestID) bToggleTest = !bToggleTest SetToggleOptionValue(ToggleTestID, bToggleTest) If(bToggleTest) ; bToggleTestがtrueなら グローバル変数.SetValue(1) Else ; bToggleTestがそれ以外(false)なら グローバル変数.SetValue(0) EndIf endIf endEvent ;デフォルトの設定(Fキー押した時に呼び出されるイベント) Event OnOptionDefault(int option) If(option == ToggleTestID) if (!bToggleTest) bToggleTest = true SetToggleOptionValue(ToggleTestID, bToggleTest) ; グローバル変数.SetValue(1) endif EndIf EndEvent ;カーソルが乗った時に下に出るテキストの設定 Event OnOptionHighlight(int option) If(option == ToggleTestID) if (!bToggleTest) SetInfoText("Toggle this option on to activate the mod.") else SetInfoText("Toggle this option off to deactivate the mod.") endif EndIf EndEvent スクリプトを書いたらコンパイルしてからespを保存し、espをアクティブにして実際にゲーム内で確認してみましょう。 Escキーでメニューを開いて、システムタブのMod Configurationです。 例のとおりですとtestという項目があるのでそれを開いて確認してください。 ToggleTestを押しても実際には何にも効果がないのですが、とりあえずは表示できて動かせたと思います。 変数の定義(IDとMCM内の変数の2つ) OnPageResetにID = Add~Option()を書く Event OnOption~()内にif option == ID Set~OptionValue(ID,変数)でMCM上の数値をセットし、グローバル変数か何かで変更した値を渡す。 というのが基本的な流れです。 実際に動くメニューを作る 以下の機能を実装したいと思います。 時間変更をするスライダー 天候を晴れにする機能のキー設定変更 キルムーブのOn/Off キルムーブの確率 まず、天候機能を作ります。 Miscellanneous- Globalで右クリックしてNew、aaaWeatherKeyを作ります。 Short, Valueは199。 先ほどのメニューのクエスト(aaaxxMCMQuest)をDepulicateしてaaaWeatherQuestにします。 クエストのスクリプトを削除して新しくスクリプト(aaaxxWeatherScript)を作ります。 Scriptname aaaxxWeatherScript extends Quest int WeatherKey GlobalVariable property aaaWeatherKey auto Weather property SkyrimClear auto int function GetVersion() return 1 endFunction Event OnInit() RegisterKey() EndEvent Function RegisterKey() UnregisterForKey(WeatherKey) WeatherKey = aaaWeatherKey.GetValueInt() RegisterForKey(WeatherKey) EndFunction Event OnKeyDown(Int KeyCode) if (KeyCode == WeatherKey) SkyrimClear.ForceActive() endif EndEvent Property の設定を忘れないように。Auto-Fill Allで全部埋まります。 次にQuest Aliasタブを開いて、プレイヤーのAliasを開きます。 SKI_PlayerLoadGameAliasを削除して新しくスクリプトを作ります。 Scriptname aaaxxTestAliasScript extends ReferenceAlias aaaxxWeatherScript Property QuestScript Auto Event OnPlayerLoadGame() QuestScript.RegisterKey() EndEvent ロード時に登録したキーが消えるバグがあるので、OnPlayerLoadGame()でロード度にキーを登録し直します。aaaxxWeatherScriptのプロパティの登録を忘れずに。 天気の機能はコレで終わりです。 あとはMCMのスクリプトを書くだけです。 コードが長いけどもめげないこと。 Scriptname aaaxxMCMScript extends ski_configbase ;プロパティ aaaxxWeatherScript Property QuestScript Auto GlobalVariable Property KillMove auto GlobalVariable Property KillMoveRandom auto GlobalVariable Property GameHour auto GlobalVariable Property aaaWeatherKey auto ;変数の定義 int KillMoveActiveID int KillMoveRandomID int GameHourID int WeatherKeyID bool _KillMoveActive = true float _KillMoveRandom = 50.0 float _GameHour = 8.0 int _WeatherKey = 199 ;home key ; 初期化 Event OnConfigInit() EndEvent ;このMCMのバージョン int function GetVersion() return 1 endFunction ;ページの設定 Event OnPageReset(string page) SetCursorFillMode(TOP_TO_BOTTOM) AddHeaderOption("KillMove") KillMoveActiveID = AddToggleOption("KillMove", _KillMoveActive) KillMoveRandomID = AddSliderOption("KillMove Random", _KillMoveRandom, "Percent {0}") AddHeaderOption("Time") GameHourID = AddSliderOption("GameHour", _GameHour, "Hour {0}") AddHeaderOption("KeyConfig") WeatherKeyID = AddKeyMapOption("WeatherKey", _WeatherKey) endEvent ;選択時の設定 Event OnOptionSelect(int option) if (option == KillMoveActiveID) _KillMoveActive = !_KillMoveActive SetToggleOptionValue(KillMoveActiveID, _KillMoveActive) If(_KillMoveActive) KillMove.SetValue(1) Else KillMove.SetValue(0) EndIf endIf endEvent ;スライダー開いた時のイベント・設定 Event OnOptionSliderOpen(int option) if (option == KillMoveRandomID) SetSliderDialogStartValue(_KillMoveRandom) SetSliderDialogDefaultValue(50) SetSliderDialogRange(0, 100) SetSliderDialogInterval(1) elseif (option == GameHourID) SetSliderDialogStartValue(_GameHour) SetSliderDialogDefaultValue(8) SetSliderDialogRange(0, 24) SetSliderDialogInterval(1) endIf EndEvent Event OnOptionSliderAccept(int option, float value) if (option == KillMoveRandomID) _KillMoveRandom = value SetSliderOptionValue(KillMoveRandomID, _KillMoveRandom, "Percent {0}") KillMoveRandom.SetValue(_KillMoveRandom) elseif (option == GameHourID) _GameHour = value SetSliderOptionValue(GameHourID, _GameHour, "Hour {0}") GameHour.SetValue(_GameHour) endIf EndEvent Event OnOptionKeyMapChange(int option, int keyCode, string conflictControl, string conflictName) if (option == WeatherKeyID) _WeatherKey = keyCode SetKeyMapOptionValue(WeatherKeyID, _WeatherKey) aaaWeatherKey.SetValue(_WeatherKey) QuestScript.RegisterKey() ;キーの再登録が必要 endIf EndEvent ;デフォルトの設定(Fキー押した時の挙動) Event OnOptionDefault(int option) If(option == KillMoveActiveID) if (!_KillMoveActive) _KillMoveActive = true SetToggleOptionValue(KillMoveActiveID, _KillMoveActive) KillMove.SetValue(1) endif ElseIf(option == KillMoveRandomID) _KillMoveRandom = 50 SetSliderOptionValue(KillMoveRandomID, _KillMoveRandom, "Percent {0}") KillMoveRandom.SetValue(_KillMoveRandom) ElseIf(option == GameHourID) _GameHour = 8 SetSliderOptionValue(GameHourID, _GameHour, "Hour {0}") GameHour.SetValue(_GameHour) ElseIf(option == WeatherKeyID) _WeatherKey = 199 SetKeyMapOptionValue(WeatherKeyID, _WeatherKey) aaaWeatherKey.SetValue(_WeatherKey) EndIf EndEvent ;カーソルが乗った時に下に出るテキストの設定 Event OnOptionHighlight(int option) If(option == KillMoveActiveID) if (!_KillMoveActive) SetInfoText("Toggle this option on to activate killmove.") else SetInfoText("Toggle this option off to deactivate killmove.") endif Elseif(option == KillMoveRandomID) SetInfoText("Killmove random percent.") Elseif(option == GameHourID) SetInfoText("Set game hour.") Elseif(option == WeatherKeyID) SetInfoText("Set Weather Key.") EndIf EndEvent 例のごとくプロパティ登録を忘れずに。 注意すべき点は1スクリプトにつき、同一のイベントは一つまでなので、 イベント内でif (option == ID)で振り分けます。 作ったMCMを更新するとき int function GetVersion() return 2 endFunction returnのところの数値を整数で一つ上げます。ここの数値が変わったタイミングでOnUpdateVersion()のイベントが動くので、ここに追加項目(初期設定だとOnInit()に書く内容)を記載します。 例はキーとリストの追加。 Event OnUpdateVersion() DodgeKey = Input.GetMappedKey("Sprint") SetKeyMapOptionValue(keyID, DodgeKey) InputMethodList = new string[3] InputMethodList[0] = "DodgeKey/2Tap" InputMethodList[1] = "DodgeKey" InputMethodList[2] = "GamePad/2Tap" EndEvent
https://w.atwiki.jp/skyrim_jpn/pages/53.html
収集品・宝探し・パズル (Collectables, treasure hunts and puzzles) 目次 A Thieves Treasure Hidden chest keys Hunt For The Way Stones Malkavs Collection Skyrims Unique Treasures A Thieves Treasure スカイリム各地の街に合計91個の宝箱を追加します。 「宝探し始めっ!」ヽ( ´ー`)ノ 日本語化 v1.0用 Hidden chest keys ダンジョン内などのボス宝箱に専用の鍵をかけます。鍵は宝箱と同じエリア内にあります。 日本語化 v1.0用 Hunt For The Way Stones スカイリム各地に10個の宝箱を配置します。お宝やアーティファクトが入っています。 日本語化 v1.1用 Malkavs Collection スカイリム各地に70個の緑色の箱を追加します。 箱の中にはゴールドと画家のダン・スコット氏が描いた絵が入っています。絵にはZ01~70までの番号が振られているので、コレクションが確認しやすくなっています。 もし緑のスティックを見つけたら、辺りを見回してみましょう。そこから近くの箱が見えるはずです。 日本語化 v2用 Skyrims Unique Treasures スカイリム各地に大量のユニークアイテム、武器、宝物を追加します。 うまく隠された20個のユニークな金の宝箱も追加されており、大量のゴールドと共に宝石やユニークアイテムを入手できます。 ユニークアイテムを見つけた時はメッセージが表示されます。 日本語化 v1.0用
https://w.atwiki.jp/skyrim_mod/pages/40.html
#GitHubにあるsimplePluginが新しいskse64で動かなくなって為、修正しました。 SKSE64プラグインを開発するには以下の環境が必要になります。 必要なソフトウェアのインストール Microsoft Visual Studio Community 2015 Microsoft アカウントが必要です。他にも色々と必要になってくるので作っておくことをおすすめします。インストールには結構な時間がかかるので、時間があるときに始めましょう。 SKSE64サンプルプラグインの用意 プラグインファイルをまとめるためのフォルダを用意する。今回はVS2015のデフォルトフォルダのドキュメント/Visual Studio 2015/projectsにSamplePluginという名前でフォルダを用意する。 Skyrim Script Extender (SKSE)からSE用の7zアーカイブを入手する。 入手した7zアーカイブ内のsrcフォルダ以下を先ほどのフォルダ(SKSESamplePlugin)に展開する。 GitHubからSimplePluginを入手する。 SimplePluginをSKSESamplePlugin/skse64フォルダ に中身のフォルダごと展開する。 Skse64SimplePlugin-masterフォルダの名前を好きな名前にする。今回はsamplePluginとした。 SamplePluginフォルダにある「skse64.sln」を「VS2015」で開く。 警告が出るがソース管理の関連付けは削除していい(開発者が保持しているソース管理システムと僕らの環境がつながっていないために出る警告です) loaderのためのプロジェクト3個は不要なので削除する(右クリックのコンテキストメニューから削除を選ぶ) ソリューション skse64 (3プロジェクト) を右クリック→追加→既存のプロジェクト(E)を選択する。samplePluginフォルダの「simplePlugin.vcxproj」を選択する。 追加された「samplePlugin」を右クリック→ビルド依存関係→プロジェクト依存関係を選択して両方にチェックを入れる 画面上真ん中の選択欄の「Debug」を「Release」に変更する プルダウンメニューの「ビルド」⇒「ソリューションのビルド」を選択する。 以下のファイルが作成されればひとまず作れる環境は出来ました。お疲れさまでした。SamplePlugin/x64/Release/simplePlugin.dll
https://w.atwiki.jp/skyrim_mod/
メインページ Skyrim MOD作成Wiki へようこそ。 このWikiは『The Elder Scrolls V Skyrim』のMOD制作に関する共同運営サイトです。誰でも編集可能です。 mod作成に困ったときはまずここを見ておこうというwikiを目指しています。 それでも分からないときは? スカイリムコミュニティやmod作成・情報交換用に Discord を用意しました。 テキストチャットで雑談もできます。 Discordの説明はこちら(外部サイト)。 メニュー MOD制作Tips:役に立つ情報や基本的なデータはここで取り扱います。 チュートリアル:実践を通して学べます。 ツール:mod制作に役に立つツールの紹介です。 Blender:モデリングやアニメーションは主にblenderを使用します。 Mod作成ニュース SKSE、Nifplugin、Blender等の更新ありましたらこちらに記載していただけると助かります。 最近の更新はこちらから確認できます。 〇Nifplugin 2023/11/4 Blender Niftools Addon - v0.1.1がリリースされました。 blender 2.8~3.6まで。4.0は非対応 揺れない(=non skined)SE用メッシュのエクスポートを実装 2022/5/27 Blender Niftools Addon - v0.0.14がリリースされました。 kfファイルによるアニメーションのインポートに対応済み。他 〇NifSkope 2023/9/24 NifSkope 2.0.dev9がリリースされました。 2020/7/9 NifSkope 2.0.dev8がリリースされました。 2017/12/19 NifSkope 2.0.dev7がリリースされました。 Array/Compound(頂点カラー等)のコピー&ペーストが可能に。Blockのstringがコピペ時に維持。 Spell機能のBSTriShapeへの対応とアニメーション関係の機能追加。 BC圧縮のddsの表示。他多くの修正や既存の機能の改善。 2016/11/15 NifSkope 2.0.dev6 11-07 BSXやTrishapeのフラグが正しく変更。メモリリークの修正されてます。 2016/11/06 NifSkope 2.0.dev6がリリースされました。 開発版ですが1.10から大幅に刷新され非常に使い勝手が良くなったため試す価値は十分にあります。 dev6でSE版対応や、SE版に役に立つ機能が追加。さらに高速化されました。 2.0の特徴 見た目がゲーム上と非常に近い。 3倍以上の高速化 エフェクトアニメーション対応 本体のbsaファイルのテクスチャを読み込み、Open Archive機能でBSAファイルから解凍せずとも直接メッシュファイルが開けます。 〇Animation Rig by tktk 2021/4 Animation Tools N3+を別作者達がカスタマイズしたSAEリリースされました。 Animation Tools N3+のように元の物から独立していないのでAnimation Tools N3+が必須です。 くわしくはLovorsLabの詳細ページを参照。ダウンロードにはLoversLabへのログインが必要 2020/9 Animation Tools N3+ 1.61リリースされました。 2016/06/29 Animation RigCustom 1.5リリースされました。作成したモーションがズレず、さらに使いやすく。 公式で用意されているCreation Kit wikiは情報量が多く必読ですが、 2023年12月頃にwiki全体のリニューアルで一部ページ消失、2024年2月頃にメンテナンスと表示されたまま閲覧不可能となっています。 幸い有志によるwikiのクローンサイトが存在しており2021年12月頃の公式wikiとほぼ変わらない内容となっております。 Creation Kit Wiki by uesp ただしwebでの日本語訳された記事は少なく、有志による翻訳ダウンロード版もご活用ください。 【CK Wiki日本語ページ(web)】 と 【CK Wiki日本語版(DL) 】
https://w.atwiki.jp/skyrimgymodra/
スカイリムMod翻訳@wikiへようこそ カタナパックMod「Katana Pack」 【説明】 各カテゴリーで刀を作ることができます。刀の速度とリーチはソードよりわずかに優れています。 現在、木製、オーク、スチール、スカイフォージスチール、シルバー、ゴールデン、ガラス、スタルリム、エボニー、デイドリックの10種類があります。 クラフトにはそれぞれのスキルや条件が必要です。シルバーとゴールデンはエルフのカテゴリーとして扱われます。 シルバーダイカタナとゴールデンダイカタナはこのMODには含まれていません。 もっと光沢のある武器や鎧を探しているなら、それはここにあります。 https //bethesda.net/en/mods/skyrim/mod-detail/3425796
https://w.atwiki.jp/toho/pages/2240.html
Skyrise サークル:Levo Lution Number Track Name Arranger Original Works Original Tune Length 01 Transparent Metropolis of the Sky High Lix 東方妖々夢 天空の花の都 [06 52] 02 Cherry Blossoms above the Clouds Lix 東方妖々夢 幽雅に咲かせ、墨染の桜 ~ Border of Life [07 45] 03 Split Horizon Lix 東方怪綺談 メイプルワイズ [06 44] 04 Transmission Channels Lix 東方妖々夢 人形裁判 ~ 人の形弄びし少女 [07 00] 05 Last Remote 姫川紫音, ゆう 東方地霊殿 ラストリモート [08 12] 06 Digital Confusion Lix 東方永夜抄 月まで届け、不死の煙 [08 03] 07 Skyrise Illuminance Lix 東方永夜抄 千年幻想郷 ~ History of the Moon [12 01] 08 Last Daybreak Lix, Rute (Sync) 東方妖々夢 少女幻葬 ~ Necro-Fantasy [07 17] 詳細 コミックマーケット76(2009/08/15)にて初頒布 イベント価格:1,000円 ショップ価格:1,500円(税込) レビュー チルアウト調のリキッドファンクドラムン、プログレッシブブレイクス、プログレッシブトランス コンセプトは「空の旅」 これは推測だけど、おそらくChicaneの名盤「Behind The Sun」へのオマージュだと思う (Behind The Sunのアルバムジャケットに飛行機が描かれているし、曲調も似通ているので、その可能性は高いと思う) とはいえかなり独自性は強く、 時折ドリームトランスのような美しいメロディーの反復があったり、かと思いきやダッチトランスのようなメロディアスなパートもある それにアコースティック、クラシックが絡んできたりと、聞きごたえは抜群 Lix氏やゆう氏は昔からブレイクビーツに関しては定評があるだけに ドラムンベースとしても非常に洗練されており、 中だるみするような場面は全く存在しない サビが浮いている気がしないでもないが、同人トランスアルバムの中では最高クラスの完成度だと思う 最強 -- 名無しさん (2009-08-24 16 44 04) 原曲香る系トランス、ドラムンベースアレンジ。透明感ある音作りに定評があるLix氏が「空」をテーマにコンセプトアルバムを作成。アレンジ技術は触れるまでもなく十分に水準以上。きっちりと作り込まれた各曲は、それぞれに織り込まれたアレンジャーの意図を映し、移りゆく空の表情を見事に表現している。コンセプトアルバムとしての完成度も高い。 1曲目天空の花の都アレンジは同サークルが2006年に出したEarthlight所収の同曲アレンジをさらに透明にしたイメージ。午後の穏やかな空が想起される。後半のバイオリンがいい味付けである。2曲目墨染アレンジは原曲サビを繰り返して空に放り投げるような定番の形式が手堅いのだがやぼったさを感じる。5曲目ラストリモートアレンジはゲストアレンジャーによるものであるが、深夜のイメージにしてはやや英詞が騒がしく、ビートも強すぎて、アルバム全体からしてみれば少しそぐわない印象を受ける。8曲目少女幻葬アレンジは冒頭からうねるようなストリングスとバックで硬質に繰り返される原曲メロで夜明けが始まり、3分13秒あたりから陽が顔を出して朝になり、5分25秒あたりから終奏として完全に明けた空を漂うといった曲の表情の移り変わりが非常に好もしい。 いずれも佳作といえる整った曲は、この手のアレンジが好きであれば満足するだろう。まず試聴して、気に入れば委託もあるようなので求めておくべきだ。特に原曲が香るトランスでここまできっちりできているのは稀有だと思う。ただ、ここからは完全に個人の好みであることを断っておくと、惜しむらくは逆に、その原曲メロがどの曲でも強すぎるのではないかという点にある。Lix氏の技術をもってすれば、もう少し原曲の色を消して、純粋に自らの意図としてそれぞれの空の色の構成と作り上げた透明な音で勝負してみてもよかったのではないか、と思えるのだ。ともあれ、次作にももちろん期待している。 -- 電波? (2009-08-26 04 07 34) 透明感のある良い音作りではあるが、原曲に忠実すぎて少しつまらないところがあるのも事実。 上の方も言っていると通り、もう少し原曲の色を消しても良かったかもしれない。 -- 名無しさん (2009-10-12 09 24 45) 名前 コメント
https://w.atwiki.jp/tes5/pages/2.html
メニュー トップページ 寄り合い所 旅の宿 編集記録 情報提供・検証情報 過去ログ一覧 初めての方へ SKYRIMとは 操作方法 FAQ(よくある質問) 世界観の知識 攻略情報 クエスト 概要 メインクエスト ウィンターホールド大学 同胞団 闇の一党 盗賊ギルド 内戦クエスト デイドラクエスト サイドクエスト/その他クエスト Dawnguardクエスト Dragonbornクエスト CreationClubクエスト 講座・テクニック ダンジョン スカイリム ブラックリーチ ソウルケルン(DLC1) 忘れられた谷(DLC1) ソルスセイム島(DLC3) 罠 犯罪 データ MAP ランダムイベント NPC一覧 スキルトレーナー 従者 結婚 養子 店・宿屋・商人NPC 地域別NPC一覧 敵 プレイキャラクター 種族 ステータス 戦闘系スキル 魔法系スキル 隠術系スキル 特殊効果 石碑・祝福 吸血病 人狼化 病気 アイテム アイテム 装備 薬 巻物 食べ物 材料 本 その他 魔法 魔法とは 変性 回復 破壊 召喚 幻惑 シャウト 無料で入手できる魔法 生産系 鍛冶 付呪 錬金術 料理 精霊の鋳造器具 家 馬 街 実績/トロフィー その他 DLC 第1弾「Dawnguard」 第2弾「Hearthfire」 第3弾「Dragonborn」 Anniversary Edition「CreationClub」 用語集 読み物 バグ バグ バグ(クエスト系) バグ関連ダンジョン 有用なバグ バグ応用テクニック バグ修正状況報告 珍現象 誤訳・珍訳 SKYRIMの謎 日本語版声優 パッチ リンク 2ch関連 テンプレート 更新履歴 取得中です。 アクセス 人 今日 - 昨日 - 総数 - ここを編集 Wiki内検索
https://w.atwiki.jp/vipvalkyrie/pages/22.html
2010年に入ったので、以前までの歴史は別ページに移動させました。 前回までのあらすじ⇒valkyrieの歴史(2009) 01/20 あけおめことよろ アイスタイタンクエが始まるや否や必死にクエをこなすVIPPER達。 そんな中、新年早々?に復帰してたごくつまが発光、おめでとうございます。 こうして廃プリだけ着々と頭数が揃っていくのであった。 2/15 バレンタインなんてそんなものは無かった。 ぎるますからのお願い:転生したら歴史追加しろおwwwっをwww 2/18 VIPPERによる大規模きのこテロ。 やりすぎてGMが出動する事態となった。お仕置きは垢凍結一日。 GMを動かしたという満足感に浸りつつ、次は油でやろうぜ?と新たなる計画を立て始めるのであった。 3/1? DEAD IS dengyar very very syatuという名言が飛び出す。 本人曰く「sランシャツよこさないと殺す」の意。 この発言後IRC内が騒然となったのは言うまでもない。 3/24 みこと&おにく指揮の下、ついにVIPPER達がアビスニヨ狩に立ち上がった。 が、しかし、開始からポタ子不在や忘れ物、回線不調などの幸先悪いぐだつき具合。 さらに3F進入後、ハイドラ&データル乱入によるPT壊滅の危機を迎える。 それでもなんとか持ち直し、経験値と数多くの財宝を持ち帰る充実の結果となったのであった。 3/28 極妻がハティーcを拾う。マジで。 なんというめしまずwwwwwwww 4/4 iROVIPValkyrieの一周年めでてえwwwwちょっとだけ過ぎてるけどwww ついにあのガンスリが立ち上がった・・。 (mimi___) ふふ、一瞬ではあく → (mimi___) リヒ 瞬時の判断で公式イベントのBGMクイズを物ともしない、流石はGマスである・・・。 が、結局リヒでは無くジュノーが正解であり、とんだ赤っ恥をかいたのであった。 4/18 iROVIPValkyrieで初のスナイパー作成者wanwanが帰ってくる・・・が wanwan_ 明日からfezイベントだからあんまりやらないと思うwwww 果てしない別ゲとの戦いはまだまだ続くのであった。 5/27 アビスクエストのおかげでneccaプリが99に lvl8槍傭兵30分でlvl 1-- 47 うめぇwwwwww みんなの協力で転生してから1日でハイアコ終了 5/30 毎日声を掛け合いアビスPartyに燃えるメンバー達 ついにeonisuが発光、sake,emanonのサブも発光と怒涛のラッシュが続く mapicoはクリエへ転職,mosu(mofu)新規ちゃん勢も勢いを増している 6/4 とうとうアビスクエのイベントが終わった。一体どれくらいの人間が発光したのだろうか GAIJINのMPKにもめげず、時にはGAIJINと協力し、上手いGAIJINの友人も増えた 何にせよ、色々な意味でVipGに大きな影響を与え活気と経験値をもたらしたのは事実である ともあれ、みんなお疲れ様でした! 6/5 アビスクエ期間中に99になったキャラクタを数えてみた。 数え間違いがあるかもしれないが11キャラを99に出来たようだ 即転生した者は2~3日でレベル90を超えていたという・・・ タイタンクエを超えたクエストであったのは間違いないだろう。 6/26 気がついたら3人程転生してた 経験 ドロップ2倍はうめぇwwwwwwww 6/29 えまのんSniperアビスうめえで99に job?64(笑) 11/8 R化、前情報ではくそげーだのなんだの騒がれてたわりにいざ来てみると結構良調整 一週間でハンター98→レンジャー105にする猛者も現れる 罠つえー、CRつえー、MEつえー、なんかいろいろつえー^q^ ...vipvalkyrie
https://w.atwiki.jp/skyrim_mod/pages/55.html
このページではBlenderでスカイリム用のメッシュファイルの入出力についてを解説します。 nifプラグインはスカイリム用にカスタムしてるのでかなり簡単になりました。旧来のやり方はBlender2.49bを使う旧方式 更新情報 必要なものをそろえる Blender 2.7xの導入方法 Blender Nif Plugins旧方式に比べてのメリット まだ出来ないこと 動画 インストール インポート武器nifの読み込み時の注意点 顔ファイル(FaceGen)の読み込みの注意点obj形式での読み込み obj形式での出力(差し替え) nif形式での読み込み ワークフロー エクスポート前の設定メッシュを差し替えて設定を引き継ぐ方法 一から手動設定Texturesフォルダの作成 マテリアル ノーマルマップの設定 シェーダーの設定 バージョン設定 スロット(DismemberFlag)の指定 エクスポート前のチェックリスト エクスポートエクスポート用のスクリプト エクスポート時のエラー別トラブルシューティング 症状別トラブルシューティング動きにメッシュが追従しない(出力したnifにBSDismemberSkinInstanceがついてない) SkinInstanceがついていてもウェイト情報が抜ける 位置がずれる CK上では表示されるのにゲーム内で表示されない モデルデータが表示されない(透明になる) テクスチャが反映されない(ゲーム内で紫色になる) 手足がずれる。 一部分または全部が表示できなかったり、一部分が伸びたりする 修正されたエラー その他 肌が浅黒くなる、透明になる、肌のテクスチャの表示がおかしい。 リンク 更新情報 2019/4/16 oppracoさん作の改良版nifプラグインの配布。 改良点 Skyrim Shader Typeの入出力対応 NiAlphaPropertyの出力対応。 環境マップの入出力対応。 インポート時のスケルトンの整列を「なし」にすると複数のスケルトン付きメッシュ読み込みしても、エクスポート時におかしくならなくなりました。「Re-Align Tail Bone」だと旧来通り、別のスケルトン付きメッシュを同じ方法で読み込むと上書きしてしまいます。(「BoneExMat」データが必要なため) 2017/8/24 ボタン一発で出せるExport nif Script for Skyrimを追加。 2017/8/23 顔ファイル(FaceGen)の読み込みの項目を追加。 エラー別のtoo many values to unpack~の対処法について記載。 2017/7/02 Nif plugin for Skyrimがはじめからインポートのスケール0.1倍、エクスポートのスケール10倍設定になっていたのでそのままデフォルトに。動作には支障ありません。オプションの方を1倍スケールにしました。 2017/2/15 いくつか画像の追加。Texturesフォルダの作成を追加。 2016/4/13 旧方式からこっちをメインにするために内容を改変しました。 どれをダウンロードしていいかわかりづらいので、動作安定+スカイリム用の出力設定に改変したNif plugin for Skyrimを配布しています。 2016/4/08 Niftools Dismember Flags Panelの+の追加ボタンで追加できない問題を(勝手に)修正 必要なものをそろえる Blender2.7x 改良版nifプラグイン(opparcoさん謹製) nifファイルの閲覧・編集:NifSkope 2.0 BSAファイルの展開:BSA Browser Blender 2.7xの導入方法 Blenderのバージョンアップが進み、2.7x以降も続々と登場しますが、本wikiではサポートしておらず、対応するプラグインも開発されていないため、2.7x代を推奨します。 Blenderのダウンロードページへ行きます。 「Previous Versions」タブで過去バージョンを探します。最も新しい2.7xは2.79bです。 Blender 2.7xを .ZIPのほうをダウンロードします。OSが64bitであれば、64bit、Mod Orgnaizerを経由する場合は32bitを選んでください。 適当なフォルダに解凍します。あとはblender.exeを起動すれば使えます。 詳しくはBlenderの導入(外部リンク) Blender Nif Plugins Blenderでnifファイルの入出力に必要なプラグイン(アドオン)でまだテスト用のビルドではあるんですが、すでに実用的です。 最新の2.7xの対応やスカイリムの暫定対応がなされています。 旧方式に比べてのメリット 使いにくいBlender2.49bを経由せず直接最新のBlenderにインポート/エクスポートできます。 pyffiやnifscripts等すべて含まれているので煩わしいセットアップ作業が不要。→このアドオン一本あれば動く。 スカイリムのnifを事前編集なしに直接読み込めます。→バージョンの書き換えや(一部)不要ノードの削除不要。 フォルダ構成さえ正しければテクスチャ・UV・マテリアル設定、正しいボーン設定を保持したままインポートできます。→2.49bではできなかったこと エクスポート時にバージョンの書き換えや不要ノードの削除、パーティションの変更等の必要なし。テクスチャ設定も出力できます。 まだ出来ないこと アニメーションの入出力。アニメ付きnifも不可 NiStringExtraDataの出力。 BSEffectShaderPropertyが読み込めません。つまりエフェクト系はほぼ読めません。 コリジョン(当たり判定)のエクスポート。出せることには出せますが、ゲームがクラッシュします。 動画 nif tools公式の導入ビデオ アセット作成チュートリアル Blenderで作成したオブジェクトをSkyrimへ持ってくるまで by Tamu75 インストール 改良版nifプラグインをダウンロードします。 展開して「io_scene_nifフォルダ」を「Blenderのフォルダ\Blenderのバージョン\scripts\addonsフォルダ」に入れる。 BlenderのUserPreference→Addons開いて、検索窓にnifと打ってImport-Export NetImmerse/Gamebryo nif formatを表示させ、その一番右端をチェック。 左下Save User Settingを押して設定を保存。※ImportError No module named pyffi が出て入れられない場合ドライブ名 \Users\ユーザー名\AppData\Roaming\Blender Foundation\Blender\バージョン\scripts\addonsの方にio_scene_nifフォルダを入れてみてください。 インポート 「File」→「Import」から「NetImmerse/Gamebryo(.nif)」を選択します。 設定はファイルブラウザの左下に表示されます。 設定項目はそのままでも読めます。 {インポート時にMeshesファイルとTexturesファイルが同じ階層のフォルダにあってnif上で指定してあるテクスチャがある場合は テクスチャ設定を読み込んでくれます。ぜひテクスチャの方も展開しておきましょう。} インポート時にテクスチャが読み込めない場合、黒いメッシュで表示されますがバグではないです。 View Port ShadingをSolidに、 プロパティウィンドウのShading→Matcapにチェックを入れます。 武器nifの読み込み時の注意点 武器にはEdgeBloodという血糊のエフェクトが大抵ついていて読み込めません。 ですのでインポート前に事前にnif skopeで削除してください。 EdgeBloodを選択して、Ctrl+Deleteで削除できます。 同様にEdgeBlood01も削除します。 File- Save As...でインポート用に別名で保存します。例:xxx_import.nif 顔ファイル(FaceGen)の読み込みの注意点 nif形式で読み込むと頂点数が変わってしまうので、入出力してもゲームでは使えません。 通常は最新版のBlenderでOBJ形式で入出力します。 obj形式での読み込み nif Skope(バージョンはどれでも可)で出力したい顔のnifファイルを開き、顔のNiTriShape(~Head~)を選択して、File Export Export .OBJで出力。 Blender2.7xでFile Import Wave front(.obj)で+Keep Vert Orderを選択して、Y Forward Z upで読み込みます。 読み込んだらTキーでツールシェルフ開いて、Tools Shading Smoothをかける。スムースかけないとカクカクになってしまうので。 あとはお好みで編集しますが、頂点を分割したり追加したりはしてはいけません。 obj形式での出力(差し替え) Object modeで顔ファイルを選択し、 File Export Wave front(.obj)で+Keep Vertex Orderを選択して、Y Forward Z upで出力します。 Nifskope 1.20 Alpha2(2.0はインポート不可)で読み込みに使った顔のnifファイルを開きます。 顔のNiTriShape(~Head~)を選択して、File Import Import .OBJで読み込みます。 これで差し替えの完了です。 nif形式での読み込み このやり方で読み込んでもゲームでは顔ファイルとしては使えません。 nif形式で読み込みたい場合はそのままでは読み込めないのでBSFaceGenNiNodeSkinned NiTriShape BSDismemberSkinInstance Skeleton RootのValueを0にします。 これをすべてのNiTriShapeで行います。首のあたりがひっくり返りますが、読み込みには問題ありません。別名で保存して、あとは下記のインポートと同じで読み込んでください。 ワークフロー モデル制作→UV展開→テクスチャ→ここでベースメッシュと差し替えもしくはnif項目の手動設定→ウェイトを塗る→エクスポート エクスポート前の設定 スカイリムのnifからインポートしたものはエクスポートに必要な設定を保持してるのでそのままエクスポートできます。 自作メッシュの場合はメッシュを差し替えて設定を引き継ぐパターンと、一から手動で設定するパターンがあります。 メッシュを差し替えて設定を引き継ぐ方法 nifの設定を手打ちするのはけっこう大変なのでベースメッシュを読んでメッシュだけ差し替えるのが簡単です。 ベースにするメッシュをnif importで0.1倍スケールで読み込みます。 たとえば、頭装備で髪型を非表示するものは鉄の兜等のnifファイルを読み込みます。髪型表示したい時のベースはサークレットにします。 オブジェクトモードで作ったモデル→ベースメッシュの順に選択。Ctrl+Jで統合。 エディットモードで位置合わせ。 元のメッシュはエディットモードで削除。元メッシュの選択はCtrl+L(選択頂点に接続されてるメッシュ全選択)で選択します。 ベースメッシュのマテリアルは削除せずにそのまま引き継いでテクスチャのパスだけ変更します。 ウェイトがある場合は、頂点グループをアサインし直して、塗りなおしかコピーして仕上げる。 一から手動設定 一から作った場合は手動で設定していきます。 一から設定する場合でも元となるメッシュ(髪なら髪、武器なら武器のバニラのnifファイル)を見つけて、それに設定をあわせて行きます。 Texturesフォルダの作成 作業中の.BlendフォルダがあるところにTexturesフォルダを作ります。 そうでない場合に出力時にエラーになります。 たとえば:Textures\Clutter\Food\XXX\のように実際に配布する場合のフォルダ構成にしておくとパスの変更がいらないので楽。 マテリアル 法線情報が欠落するのでマテリアルが必須です。このあたりは2.49bと同じ作業です。 1.プロパティウィンドウからMaterialを新規作成。 2.となりのTextureアイコンからNewを押してテクスチャを新規作成してます。 3.Type:をImage or Movieにし、左のアイコンかOpenを押して画像の指定をします。 4.MappingをUVにして、Map を選びます。 ノーマルマップの設定 前述のマテリアルの2.以降と手順は同じです。 マテリアルはそのままでテクスチャを作って画像をし、UVを設定します。 Texturesプロパティ内のImage SamplingのNormal Mapにチェックを入れます。 InfulenceのGeometry Normalのみチェックを入れます。 シェーダーの設定 オブジェクト(立方体のアイコン)→Niftools shader→ShaderTypeをBSLightingShaderPropertyに選ぶ。 それ以下のフラグのチェックは元となるnifファイルを参考にしてください。 ※BS Lighting Shader Object Typeは現在Defaultのみ対応 ※ウェイトがある場合はSkinnedに必ずチェックしてください。 バージョン設定 NifObject Panelから Nif Version 20.2.0.7 User Versionを12 User Version 2に83 ここまでは固定です。 中段Nif Root Node NiNodeですが、元となるnifをnifskopeで開いて、一番上段のノード名に合わせます。 エフェクト、スケルトン、ウェイトのないメッシュはBSFadeNode ウェイト付きメッシュはNiNode BSXFlagはnifskopeで見てBSXFlagsノードがある場合は、Block Details内のInteger Dataにあわせます。 スロット(DismemberFlag)の指定 ウェイトと装備スロットがある場合のみ設定します。 元となるメッシュにBSDismemberSkinInstanceのノードがある場合が該当します。 元となるメッシュをBSDismemberSkinInstancePartitions→Partition→Partitionsの設定と合わせます。 自作モデルにスケルトンを入れたい場合は オブジェクト→スケルトンの順番でShift+右クリックで2つ選択。 Ctrl+PでArmature Deformを選びます。 エクスポート前のチェックリスト バージョンはあってるか? Nゴン(多角形ポリゴン)はないか? Mesh Lintというアドオンで調べることが可能※Blender アドオン参照。分割しておく。 ウェイトの塗り残しはないか?分割やメッシュ(頂点)の修正度にその箇所はウェイトの塗り直しが必要。アサインで予め全部頂点塗っておくと便利。 オブジェクトモード時のメッシュのスケールが1.0倍になっているか? プロパティパネルでScale値で確認可能。Ctrl+A→Scaleで1.0倍に直せる。 エクスポート 出力したいオブジェクト選んで、 File→ExportからNetImmerse/Gamebryo(.nif) Game Skyrimを選択 Smoothen Inter-Object Seam、Skin Partition、Flatten Skin、Force DDSにチェック。 ※2.49bで作ったデータ(nif importをバージョン変更ありで経由している場合)は大きさが0.1倍になってるので、Scale Correction Exportを10.0にして出力します。 これはImport時に0.1倍の大きさで読みこんだ場合も同じです。 エクスポート用のスクリプト Export nif Script for Skyrim エクスポートは上記の手段で行えますが、これはエクスポートの選択したオブジェクトひとつをボタン一発で出力します。 バージョンやシェーダーの設定を自動的に行うのでよく起こりがちなエラーを回避できます。 使い方や詳しい説明はリンク先のブログ記事に記載してます。 エクスポート時のエラー別トラブルシューティング ポップアップでエラー出ますが、クリックすると消えるのでそのあと確認したい場合はEditor Typeをinfoにするとログが読める。 エラーはこの行を読みます。下から二行目あたり。 Export version expected shader. no shader applied to mesh bpy_struct, Object("XXXX") , these cannot be exported to NIF. Set shader before exporting. →シェーダーが付いてない。プロパティのObject→niftools shader→ShaderTypeをBSLightingShaderPropertyに選ぶ。 Cannot export mesh with unweighted vertices. The unweighted vertices have been selected in the mesh so they can easily be identified. →ウェイトが塗れてない頂点が存在する。エラーが出た時点で塗れてない頂点が選択状態になっている。この状態でEditor ModeのVetex GroupsでAssignすると早い。 Some polygons of bpy_struct, Object("xxx") not assigned to any body part. The unassigned polygons have been selected in the mesh so they can easily be identified. →UNPで起こるウェイトの設定ミス。肌部分をオブジェクトモードで選び、Object DataのVertex Groupsに末尾に.001(例:SBP_32_BODY.001)が付いたデータがあるのでマイナスボタンを押して消す。 基準頂点グループに全肌メッシュを再適用しないといけないので、Vertex Groupsから基準頂点グループ(例:SBP_32_BODY)を選び、Edit Modeに入ってAキーで全選択、Assignボタンを押す。 Assertion Error →重複頂点などの論理矛盾の箇所がある。エディットモードに入って、全選択→ツールシェルフ→Tools→Remove Doublesで直る。 →上記で直らない場合は、三角ポリゴンと四角ポリゴンが混合しているメッシュの可能性が高い。メッシュ→Faces→triangulate facesで直る。 ※出力時に自動で三角ポリゴンに分割するので本来は三角と四角ポリが混在していても問題無いですが、このようにエラーが出る場合もあるようです。 AttributeError TextureHelper object has no attribute context →指定したテクスチャファイルはTexturesフォルダ内にないと出るエラー。Texturesフォルダを作成または移動して、プロパティウィンドウのTexture→Images指定しなおしてください。 ValueError need more than 1 value to unpack →nifのバージョン指定がされてない。Niftools Object Panelの項目でNif Versionを20.2.0.7にする。 ValueError too many values to unpack (expected 4) →nifのバージョン指定のミス。Niftools Object Panelの項目でNif Versionを20.2.0.7にする。 スケルトンも同じ数値でバージョン指定しましょう。 xxx version does not match selected export settings →バージョンの不一致。おそらくエクスポート設定がOblivionになっているのでSkyrimに変える。 Texture is set to use UV but no UV Mapis Selected for Mapping Map →UVマップの設定がされていない。プロパティウィンドウのテクスチャ項目→Mapping→Map からUVmapを選択。 症状別トラブルシューティング 動きにメッシュが追従しない(出力したnifにBSDismemberSkinInstanceがついてない) 考えうる原因 Export時にSkin PartitionがONになってない。 ウェイトがついてない。→EditModeでAで全選択してAssignでとりあえず全部塗っちゃうのをオススメします。コピーするならBlender最新のだとボーンウェイトコピーがないのでTransfar Weights使う。 装備の場合はVertexGroupが出力前につけるスケルトンのNode(+BP_TORSO)が一致しないといけません。例えば頭装備ならNPC HeadとBP_TORSOのVertexGroupが必要 出力時にメッシュにスケルトンがついてない→ モディファイアからArmatureで出力用のスケルトンをつける。 BSLightingShaderPropertyのSLSF1_Skinnedのチェックを入れてください。 BlenderではNiftools ShaderのSkinnedにチェックを入れます。 SkinInstanceがついていてもウェイト情報が抜ける Blender上でマテリアルの設定がされてない可能性があります。 NiTriShape→NiTriShapeDataのBlock DetailsのHas NormalsがNoになっている場合はマテリアルが適切に設定されてません。 もう一度マテリアルの設定を見なおしてみてください。 位置がずれる スケルトンの位置情報がおかしいかもしれません。一旦Blender上のスケルトンを削除してImportから付け直します。 CK上では表示されるのにゲーム内で表示されない BSDismemberSkinInstance→Partitions→PartitionsのBody Partの設定がおかしいかもしれません。 該当のnifを開いてBSDismemberSkinInstance→Partitions→PartitionsのBody Partの部分を元のnifと合わせます(=CKのArmorAddonのスロットデータと一致させる)。 Valueのところをダブルクリックすると右側に三角のプルダウンメニューが出るのでそれを押して合わせます。 例えば、鉄の兜(Data\Meshes\armor\iron\f(男性はmale)\helmet.nif)の置き換えするときに元の鉄の兜のPartitionsはSBP_131_HAIRで、置き換えモデルもSBP_131_HAIRすると表示できます。 これをSBP_142_CIRCLETにしても表示できないです。サークレットのPartitionsならサークレットの置き換えでないとできないです。 モデルデータが表示されない(透明になる) ウェイトなしのモデルデータはBSLightingShaderPropertyのSLSF1_Skinnedのチェックを外してください。 逆にウェイトありの場合はSLSF1_Skinnedにチェックを入れます。 スケールの設定ミスで小さすぎて見えてない場合があります。ゲーム内でしたらコンソールのtwfでオブジェクトの原点位置に小さくメッシュが見えたりします。 0.1倍で読み込んだ、もしくは昔blender2.49bのデフォルト設定で読み込んだメッシュはExport10倍の設定で出してください。 テクスチャが反映されない(ゲーム内で紫色になる) テクスチャの読み込みができてません。TextureSetのファイルパスのミスか、テクスチャファイルを指定のフォルダに置いてないか確認してください。 手足がずれる。 Partitionの設定が間違ってます。 BlenderのNiftools Dismember Bone Flags Panelの一番上(Start Net Bonesetがついてるもの)以外を削除します。 その一番上のVertex GroupsをEdit Modeで全選択して、Weight1.0でAssignを押して塗り直し。 一部分または全部が表示できなかったり、一部分が伸びたりする 一部分の場合はその箇所に正しくウェイトが塗れてません。出力時につけるスケルトンや、頂点グループ名が間違ってる可能性があります。 修正されたエラー AttributeError MeshHelper object has no attribute context →ウェイト全部塗れてない。Editor ModeのVetex Groupsでメッシュ全選択してからAssignで全てにウェイト塗った状態だと塗り残しが無くなります。12/04版で修正 Mesh only has one Vertex Color layer default alpha values will be written - For Alpha values add a second vertex layer, greyscale only →頂点アルファが非対応なので単純に付けただけの頂点カラーを削除してください。 ただのダミーの頂点カラーが必要時はnif側でNiTriShapeDataのHas Vertex ColorsのNoをダブルクリックで付けれます。 シェーダーの方VertexColorのフラグ外してたほうがいいです。 12/02版で修正。 その他 NiSkinInstanceからBSDismemberSkinInstanseにしたいとき。 BSDismember~ってなんぞやといえば、パーティション(≒CK上の装備スロット)を設定します。 ウェイト付きメッシュで身に付けるものはほぼ必須です。 オブジェクトモードで設定したいオブジェクトを選択し、逆三角アイコンを選択して、 NifTools BSDismember Flags Panelを開きます。 Partition Countはパーティション数。その下はパーティション名を入れます。 元にするnifと同じ設定にしてください。 肌が浅黒くなる、透明になる、肌のテクスチャの表示がおかしい。 BSLightingShaderPropertyのSkyrim Shader Typeが今のところ、デフォルトしか対応していません。 nif skopeでボディのNiNodeのBSLightingShaderProperty、Skyrim Shader TypeをSkin Tintに変えて、Shader Flags 1をダブルクリックし右端の▽を押してFaceGen Tint RGBにチェックを入れます。 リンク MOD制作ツール Blender Nif Pluginの導入 元のnif plugin Nif plugin for Skyrim(tktk謹製。opparcoさんのプラグインが上位互換なのでそっち使いましょう) Mod organizer使ってる人は32bit verのblenderをダウンロードしましょう -- tokikake (2014-10-25 14 26 56) UNPB体型でしか確認してませんが、上で書かれてる .001のついたveretx groupの削除と、ウェイトの移し替えやると、exportはできるんですが、元ファイルのNiSkinpartitionのウェイトも変更することになると思うんですが、いいんでしょうか? -- 名無しさん (2014-10-25 17 12 44) partitionblock数(UNPB体型だと2つ)も当然2から1に変更されますよね -- 名無しさん (2014-10-25 17 37 11) ああわかりました。partitionblockだけ元ファイルからもってきて、手動で修正ですね。 メッシュ修正しただけですが問題なく動いてます。 -- 名無しさん (2014-10-25 20 29 54) スケルトン読み込むと、一部名前が書き換わりますね。大腿骨のNPC L Thigh [LThg]がNPC Thigh [Thg].Lみたいに -- ちびくま (2014-11-23 05 59 32) ボーン名はBlenderの命名規則に則って変更されます(ウェイトペイントが左右対称に出来たり)。エクスポート時に戻るので心配なく -- tktk (2014-12-16 22 36 12) nifファイルを出力する際に指定するテクスチャが「Textures」という名前のフォルダ配下にない場合にエラーが出ました。出力時したnifファイルのテクスチャのパスを「Textures」という名前のフォルダ配下の相対パスにしてくれるからなのかなと思います -- ponzu (2015-01-09 02 09 53) 剣や斧のnifファイルをインポートする際、BSShaderTextureSetを持たない方の血糊のNiTriShapeは削除しないと読み込めませんでした。 -- ponzu (2015-01-09 02 13 06) Fで新たに作った面のみテクスチャが変に表示されてしまう不思議 -- 名無しさん (2015-01-25 19 14 31) これそのままメッシュ読み込むとマテリアルがないって警告出てインポートできませんよね -- 名無しさん (2015-03-12 16 59 45) 基本的にほとんどが読み込めます(マテリアルなくても)。そのまま読めないのは武器とか一部ありますね。 -- tktk (2015-03-14 11 37 29) Niftools Object Panelってblenderにあるのか。20.2.0.7なのにエラーでてまうわ -- 名無しさん (2015-04-08 21 11 26) ブレンダー上だとあるのに、出力すると表示されない 選択してるのにっていうかボディにくっつけてるのに出力するとそこだけ穴あいて表示されない -- 名無しさん (2015-07-11 21 18 35) TTypeError bpy_struct item.attr = val enum "MATERIAL" not found in ( BOUNDBOX , WIREFRAME , SOLID , TEXTURED , RENDERED ) -- 名無しさん (2015-10-18 10 56 08) いけねミスった 上記のエラーが出てインポートできないんですがどうすればいいんでしょうか -- 名無しさん (2015-10-18 10 56 54) 読み込めるし出力できるんですが、どうやっても、テクスチャが変わってしまう。パスは同じなのに黒くなる。Nif scope でにらめっこしても違いがないはずなんですが。 -- 名無しさん (2016-04-16 18 56 26) UNPBのメッシュをそのままインポートしてテストしても同じ。ノード名などは元に戻してます。 ただもともとhas normal はNOなのでそのままにしてますけど。 -- 名無しさん (2016-04-16 18 58 00) あと、いくらルート名をそろえてもエクスポート後は、ファイル名がルート名になりますよ -- 名無しさん (2016-04-16 19 07 33) 自己解決しました。 BSLighting shader property の、Shader Flags1 で、Facegen data tint にチェックがついてなかった。 リンク先参照でわかりました。 -- 名無しさん (2016-04-16 19 55 21) NifExport object has no attribute get_object_matrix のエラーは、どうすれば回避できますか? -- 名無し (2016-08-25 23 37 08) TypeError NoneType object is not subscruptable というエラーでエクスポートができません・・・。 -- 名無しさん (2016-09-07 23 29 03) 肌色が変化する理由の一つにspecular, (glosiness)の値が変わっている時があります。 -- tokikake (2017-04-02 12 31 50) windows 10 で、 Nifskope 1.20 Alpha2が、どうやっても起動しなくなった人は、現行版ではfacegenの差し替えができません。 -- tokikake (2018-05-04 21 50 20) でも、こちらのリンクhttps //www.nexusmods.com/skyrim/mods/62065/ の、Meshtools N1なら、大丈夫です。facegen.nif の修正に大助かりです -- tokikake (2018-05-04 21 52 46) Make sure there is only one texture with Influence Diffuse colorというエラーが出てエクスポート出来ないのですが、どなたか心当たりがある人はいるでしょうか? -- 名無しさん (2018-08-11 17 58 55) 既存のnifをimportしそのままexportしようとするのですが、export時に 下記のエラーが出ます。どうすれば良いのでしょう? ValueError not enough values to unpack (expected 4, got 1) -- 名無しさん (2018-09-11 10 28 34) Nif Pluginsは自らはエラー処理をしないので、Python?の生のDebugOutを見ることになる。 このDebugOutをググっても殆どヒットせず途方に暮れる。 かと言ってソースを読もうという気力もない。nifに対する知識が皆無なので。 このような悪開発環境下で開発しているmodderは凄いと思う。 -- 名無しさん (2018-09-15 09 04 24) 肌が浅黒いからSkin Tint FaceGen Tint RGBにチェックを入れて保存するとCTDするのですがどなたか心当たりがある方いますか? -- 名無しさん (2019-02-18 22 09 10) blender2.71/2.79bの32/64bitでもnifプラグインは導入出来るのですが、nifをインポートするとエラーになります。フォルダに日本語無し、win10最新、様々なnifファイルを試しても同じでした。ググったのですがお手上げです。 -- 名無しさん (2019-06-12 14 13 28) oppracoさん作の改良版nifプラグインをBlender2.8に導入したところ、「2.8xへのアップグレードが必要」と出ました、無視していいですか? -- 名無しさん (2019-09-16 20 43 49) nifプラグインはいまのところBlender 2.79までしか対応してません。 -- tktk (2019-09-30 22 52 00) 初blenderで既存のnifインポート→編集→エクスポートで"ValueError not enough values to unpack (expected 4, got 1)"が出て困ってたけど一旦新規で始めて最初の四角いゴミ消したら直った… 存在をすっかり忘れてた -- 名無しさん (2019-12-31 15 24 21) 私も「名無しさん (2019-06-12 14 13 28)」とほぼ同じです インポートする段階でエラーが発生します win10 64bitでやっています お手上げ侍です -- ななし (2020-01-03 00 10 47) つまり2.8でnif作成ができないという事は, -- 名無しさん (2020-05-08 14 25 18) Blender2.8では武器や防具は作っても導入できないのですね? -- 名無しさん (2020-05-08 14 26 30) 残念ながらそうみたい -- 名無しさん (2020-08-03 16 26 58) おま環かもしれないのですが、SE版のBSTriShapeが入ってるNifファイルって現状インポートする方法が無いんでしょうか? Blender2.79bでLE版のNifファイルは読み込めるんですが、Unknown block 'BSTriShape' というエラーが出てしまって -- 名無しさん (2020-08-09 20 55 59) すいません途中で切れてしまいました。上記のエラーがでてSE版のNifファイルは読み込めないんですが…… -- 名無しさん (2020-08-09 20 58 52) 私もそれに悩まされています・・・・。 -- 名無しさん (2020-11-19 21 38 06) 私も初めてのBlender挑戦中にそのBSTriShape問題に引っかかりましたが、某掲示板で尋ねたところOptimizerで一度LE用にコンバートすることで解決するとのことでした。実際やって見ると読み込みはできましたが、それによる弊害があるのかはわかりません…参考になれば幸いです。 -- 名無しさん (2020-12-18 17 45 48) 名前 コメント